import { useEffect } from 'react';
// @ts-ignore
import { ipc } from '@/utils/ipcRenderer';

/**
 * 自定义钩子：用于管理 Electron IPC 事件监听器
 * @param {string} channel IPC通道名称
 * @param {function} listener 事件监听器函数
 */
const useIpcRenderer = (channel:any, listener:any) => {
  useEffect(() => {
    // 添加监听器
    ipc.on(channel, listener);

    // 清理函数：组件卸载时移除监听器
    return () => {
      ipc.removeListener(channel, listener);
    };
  }, [channel, listener]);
};

export default useIpcRenderer;
